CUDA/OpenCL code generator for finite-field arithmetic over prime fields and elliptic curve arithmetic constructed with Rust.
There is also support for Fast Fourier Transform and Multiexponentiation.
Feature flags
There are several feature flags that can be combined in all possible ways. By default, all
features are enabled. You can enable CUDA and/or OpenCL support with the cuda
and the
opencl
features. Those can be combined with the fft
and the multiexp
feature. If one of
them is enabled, a kernel with that functionality will be generated.
If you only want to use the CPU version of FFT and/or multiexp you can do so by enabling the
fft
and/or multiexp
, and disabling the cuda
and opencl
features.